package ch5oopexer1;

import java.util.Scanner;

public class teacherMarket {
    String name;
    String adress;
    Card b[] = new Card[3];
    int count = 0;//计数

    public boolean add(int jf, String name, String mumber, String tell) {
        if (count >= b.length)
            return false;//已满

        if(checkRepeat(mumber))
            return  false;//重复了。。。

        Card c = new Card(jf, name, mumber, tell);
        b[count++] = c;

        return true;
    }

    public boolean add(Card c) {
        if (count >= b.length)
        {
            //扩容
            //b=new Card[b.length+10];//原来的都找不到了。。。
            Card []b2=new Card[b.length+10];
            //b2的都是null，b中原来的放进去
            for(int i=0;i<b.length;i++)
            {
                b2[i]=b[i];
            }
            //b2是局部变量
            b=b2;//完成扩容
            System.out.println("扩容成功，新数组长度是"+b.length);
            //return false;//已满
        }

        if(checkRepeat(c.number))
            return  false;//重复了。。。


        b[count++] = c;
        return true;
    }

    //检查会员号，是否存在！
    public boolean checkRepeat(String no){
        for(int i=0;i<count;i++){
            if(b[i].number.equals(no))
                return true;
        }
        return false;
    }

    //涨积分
    public boolean increase(String no, int c) {
        for (int i = 0; i < count; i++) {
            if (b[i].number.equals(no)) {
                b[i].jf = b[i].jf + c;
                return true;
            }
        }
        return false;

    }

    public String exchangeGift(String no, int l) {

        for (int i = 0; i < count; i++) {
            if (b[i].number.equals(no)) {
                //找到这个会员在数组的位置
                if (l == 1) {
                    if (b[i].jf >= 100) {
                        b[i].jf-=100;
                        return  "纸一包";
                    }
                }else  if (l == 2) {
                    if (b[i].jf >= 400) {
                        b[i].jf-=400;
                        return  "剃须刀一个";
                    }
                }
                else  if (l == 3) {
                    if (b[i].jf >= 1000) {
                        b[i].jf-=1000;
                        return  "炒锅一个";
                    }
                }
            }
        }

        return null;//没有兑换到，积分不够，或者会员没有
    }
    public void show() {
        System.out.println("这超市的地址在"+this.adress+",名叫"+this.name+"" +
                "\n会员信息如下:");
        for (int i = 0; i < count; i++) {
            b[i].show();
        }
    }
}
